Raspberry Pi /RP2350 /POWMAN /CHIP_RESET

Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text

Interpret as CHIP_RESET

31 2827 2423 2019 1615 1211 87 43 0 0 0 0 0 0 0 0 00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 (DOUBLE_TAP)DOUBLE_TAP 0 (RESCUE_FLAG)RESCUE_FLAG 0 (HAD_POR)HAD_POR 0 (HAD_BOR)HAD_BOR 0 (HAD_RUN_LOW)HAD_RUN_LOW 0 (HAD_DP_RESET_REQ)HAD_DP_RESET_REQ 0 (HAD_RESCUE)HAD_RESCUE 0 (HAD_WATCHDOG_RESET_POWMAN_ASYNC)HAD_WATCHDOG_RESET_POWMAN_ASYNC 0 (HAD_WATCHDOG_RESET_POWMAN)HAD_WATCHDOG_RESET_POWMAN 0 (HAD_WATCHDOG_RESET_SWCORE)HAD_WATCHDOG_RESET_SWCORE 0 (HAD_SWCORE_PD)HAD_SWCORE_PD 0 (HAD_GLITCH_DETECT)HAD_GLITCH_DETECT 0 (HAD_HZD_SYS_RESET_REQ)HAD_HZD_SYS_RESET_REQ 0 (HAD_WATCHDOG_RESET_RSM)HAD_WATCHDOG_RESET_RSM

Description

Chip reset control and status

Fields

DOUBLE_TAP

This flag is set by double-tapping RUN. It tells bootcode to go into the bootloader.

RESCUE_FLAG

This is set by a rescue reset from the RP-AP. Its purpose is to halt before the bootrom before booting from flash in order to recover from a boot lock-up. The debugger can then attach once the bootrom has been halted and flash some working code that does not lock up.

HAD_POR

Last reset was from the power-on reset This resets: double_tap flag yes DP yes RPAP yes rescue_flag yes timer yes powman yes swcore yes psm yes then starts the power sequencer

HAD_BOR

Last reset was from the brown-out detection block This resets: double_tap flag yes DP yes RPAP yes rescue_flag yes timer yes powman yes swcore yes psm yes then starts the power sequencer

HAD_RUN_LOW

Last reset was from the RUN pin This resets: double_tap flag no DP yes RPAP yes rescue_flag yes timer yes powman yes swcore yes psm yes then starts the power sequencer

HAD_DP_RESET_REQ

Last reset was an reset request from the arm debugger This resets: double_tap flag no DP no RPAP no rescue_flag yes timer yes powman yes swcore yes psm yes then starts the power sequencer

HAD_RESCUE

Last reset was a rescue reset from the debugger This resets: double_tap flag no DP no RPAP no rescue_flag no, it sets this flag timer yes powman yes swcore yes psm yes then starts the power sequencer

HAD_WATCHDOG_RESET_POWMAN_ASYNC

Last reset was a watchdog timeout which was configured to reset the power manager asynchronously This resets: double_tap flag no DP no RPAP no rescue_flag no timer yes powman yes swcore yes psm yes then starts the power sequencer

HAD_WATCHDOG_RESET_POWMAN

Last reset was a watchdog timeout which was configured to reset the power manager This resets: double_tap flag no DP no RPAP no rescue_flag no timer yes powman yes swcore yes psm yes then starts the power sequencer

HAD_WATCHDOG_RESET_SWCORE

Last reset was a watchdog timeout which was configured to reset the switched-core This resets: double_tap flag no DP no RPAP no rescue_flag no timer no powman no swcore yes psm yes then starts the power sequencer

HAD_SWCORE_PD

Last reset was a switched core powerdown This resets: double_tap flag no DP no RPAP no rescue_flag no timer no powman no swcore yes psm yes then starts the power sequencer

HAD_GLITCH_DETECT

Last reset was due to a power supply glitch This resets: double_tap flag no DP no RPAP no rescue_flag no timer no powman no swcore no psm yes and does not change the power state

HAD_HZD_SYS_RESET_REQ

Last reset was a system reset from the hazard debugger This resets: double_tap flag no DP no RPAP no rescue_flag no timer no powman no swcore no psm yes and does not change the power state

HAD_WATCHDOG_RESET_RSM

Last reset was a watchdog timeout which was configured to reset the power-on state machine This resets: double_tap flag no DP no RPAP no rescue_flag no timer no powman no swcore no psm yes and does not change the power state

Links

() ()